namespace AdminSG3L.Applicaticn.Dtos;

/// <summary>
/// 系统信息 DTO
/// </summary>
public record SystemInfoDto(
    string SystemName,
    string Version,
    string Environment,
    DateTime StartTime,
    TimeSpan Uptime,
    string ServerName,
    string DatabaseType,
    string DatabaseVersion
);

/// <summary>
/// 系统日志 DTO
/// </summary>
public record SystemLogDto(
    string Id,
    DateTime Timestamp,
    string Level,
    string Message,
    string? Exception,
    string? Source,
    Dictionary<string, object>? Properties
);

/// <summary>
/// 系统性能指标 DTO
/// </summary>
public record SystemPerformanceDto(
    double CpuUsage,
    long MemoryUsed,
    long MemoryTotal,
    long DiskUsed,
    long DiskTotal,
    int ActiveConnections,
    double ResponseTime,
    Dictionary<string, object> AdditionalMetrics
);

/// <summary>
/// 健康检查 DTO
/// </summary>
public record HealthCheckDto(
    string Status,
    Dictionary<string, HealthCheckResult> Checks,
    TimeSpan Duration
);

/// <summary>
/// 健康检查结果
/// </summary>
public record HealthCheckResult(
    string Status,
    string? Description,
    TimeSpan Duration,
    Dictionary<string, object>? Data
);